home *** CD-ROM | disk | FTP | other *** search
/ NeXTSTEP 3.3 (Developer)…68k, x86, SPARC, PA-RISC] / NeXTSTEP 3.3 Dev Intel.iso / NextDeveloper / Headers / ri / slo.h < prev   
C/C++ Source or Header  |  1992-07-10  |  2KB  |  94 lines

  1. /* @(#)slo.h    1.5        (Pixar - RenderMan Division)    3/8/83 */
  2.  
  3. /*-______________________________________________________________________
  4. ** 
  5. ** Copyright (c) 1988 Pixar.  All rights reserved.  This program or
  6. ** documentation contains proprietary confidential information and trade
  7. ** secrets of Pixar.  Reverse engineering of object code is prohibited.
  8. ** Use of copyright notice is precautionary and does not imply
  9. ** publication.
  10. ** 
  11. **                      RESTRICTED RIGHTS NOTICE
  12. ** 
  13. ** Use, duplication, or disclosure by the Government is subject to
  14. ** restrictions as set forth in subdivision (b)(3)(ii) of the Rights in
  15. ** Technical Data and Computer Software clause at 252.227-7013.
  16. ** 
  17. ** Pixar
  18. ** 3240 Kerner Blvd.
  19. ** San Rafael, CA  94901
  20. ** 
  21. ** ______________________________________________________________________
  22. */
  23. #ifndef _SLO_
  24. #define _SLO_
  25.  
  26. typedef enum {
  27.     SLO_TYPE_UNKNOWN,
  28.     SLO_TYPE_POINT,
  29.     SLO_TYPE_COLOR,
  30.     SLO_TYPE_SCALAR,
  31.     SLO_TYPE_STRING,
  32. /* The following types are primarily used for shaders */
  33.     SLO_TYPE_SURFACE,
  34.     SLO_TYPE_LIGHT,
  35.     SLO_TYPE_DISPLACEMENT,
  36.     SLO_TYPE_VOLUME,
  37.     SLO_TYPE_TRANSFORMATION,
  38.     SLO_TYPE_IMAGER
  39.     } SLO_TYPE;
  40.  
  41. typedef enum {
  42.     SLO_STOR_UNKNOWN,
  43.     SLO_STOR_CONSTANT,
  44.     SLO_STOR_VARIABLE,
  45.     SLO_STOR_TEMPORARY,
  46.     SLO_STOR_PARAMETER,
  47.     SLO_STOR_GSTATE
  48.     } SLO_STORAGE;
  49.  
  50. typedef enum {
  51.     SLO_DETAIL_UNKNOWN,
  52.     SLO_DETAIL_VARYING,
  53.     SLO_DETAIL_UNIFORM
  54.     } SLO_DETAIL;
  55.  
  56. /*vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv*
  57.              Modified/added by JAD 09/22/89
  58.  *vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv*/
  59. #ifndef _SHADECON_
  60. #define _SHADECON_
  61. typedef struct {
  62.     float    xval;
  63.     float    yval;
  64.     float    zval;
  65.     } POINT;
  66.  
  67. typedef float SCALAR;
  68. #endif
  69.  
  70. typedef struct slovissymdef {
  71.     char *svd_name;
  72.     SLO_TYPE svd_type;
  73.     SLO_STORAGE svd_storage;
  74.     SLO_DETAIL svd_detail;
  75.     char *svd_spacename;
  76.     union {
  77.     POINT    *pointval;
  78.     SCALAR    *scalarval;
  79.     char    *stringval;
  80.     } svd_default;
  81.     union svd_defaultvalu {
  82.     POINT    svd_pointval;
  83.     SCALAR    svd_scalarval;
  84.     } svd_defaultval;
  85.     unsigned svd_valisvalid : 1;
  86. } SLO_VISSYMDEF;
  87.  
  88. /*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^* 
  89.  *^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
  90.  
  91. #define NULL_SLOVISSYMDEF ((SLO_VISSYMDEF *) 0)
  92.  
  93. #endif /* _SLO_ */
  94.